library(tidyverse)
library(knitr)

set.seed(1234)
theme_set(theme_minimal())

Objectives

  • Review Cairo’s definitions of great visualizations
  • Discuss the importance of truth in visualizing data
  • Identify examples of untruth in visualizations
  • Critique visualizations using these definitions

What makes a good visualization

Truthful

Return to this soon. But probably the most important element of a great visualization, especially in academia. We are supposed to be unbiased pursuers of knowledge and/or “the truth”, so how we present our research and findings should be guided by thorough and honest research. Of course this is also true in many other fields.

Not truthful

Bad axes

Inconsistent x-axis

Inconsistent x-axis

Inconsistent y-axis

Inconsistent y-axis

Two y-axes

Two y-axes

Missing/incorrect data

Only have half the year

Only have half the year

Numbers plotted are not even correct

Numbers plotted are not even correct

The truth, the whole truth, and nothing but the truth

Missing the other part of the story - what happens to those without a 4-year degree?

Missing the other part of the story - what happens to those without a 4-year degree?

Functional

Not functional

Baseline of 34, not 0

Baseline of 34, not 0

Inverted y-axis

Inverted y-axis

Should have gone with a bar chart

Should have gone with a bar chart

Beautiful

Not beautiful

Serious story, ruined by amateur graph

Serious story, ruined by amateur graph

Insightful

Not insightful

All zeroes

All zeroes

r/place

Use of white
Use of other colors minus white

Enlightening

Enlightenment is in the eye of the beholder

Session Info

devtools::session_info()
## Session info --------------------------------------------------------------
##  setting  value                       
##  version  R version 3.3.3 (2017-03-06)
##  system   x86_64, darwin13.4.0        
##  ui       X11                         
##  language (EN)                        
##  collate  en_US.UTF-8                 
##  tz       America/Chicago             
##  date     2017-04-03
## Packages ------------------------------------------------------------------
##  package    * version date       source         
##  assertthat   0.1     2013-12-06 CRAN (R 3.3.0) 
##  backports    1.0.5   2017-01-18 CRAN (R 3.3.2) 
##  broom        0.4.2   2017-02-13 CRAN (R 3.3.2) 
##  colorspace   1.3-2   2016-12-14 CRAN (R 3.3.2) 
##  DBI          0.6     2017-03-09 CRAN (R 3.3.3) 
##  devtools     1.12.0  2016-06-24 CRAN (R 3.3.0) 
##  digest       0.6.12  2017-01-27 CRAN (R 3.3.2) 
##  dplyr      * 0.5.0   2016-06-24 CRAN (R 3.3.0) 
##  evaluate     0.10    2016-10-11 CRAN (R 3.3.0) 
##  forcats      0.2.0   2017-01-23 CRAN (R 3.3.2) 
##  foreign      0.8-67  2016-09-13 CRAN (R 3.3.3) 
##  ggplot2    * 2.2.1   2016-12-30 CRAN (R 3.3.2) 
##  gtable       0.2.0   2016-02-26 CRAN (R 3.3.0) 
##  haven        1.0.0   2016-09-23 cran (@1.0.0)  
##  hms          0.3     2016-11-22 CRAN (R 3.3.2) 
##  htmltools    0.3.5   2016-03-21 CRAN (R 3.3.0) 
##  httr         1.2.1   2016-07-03 CRAN (R 3.3.0) 
##  jsonlite     1.3     2017-02-28 CRAN (R 3.3.2) 
##  knitr      * 1.15.1  2016-11-22 cran (@1.15.1) 
##  lattice      0.20-34 2016-09-06 CRAN (R 3.3.3) 
##  lazyeval     0.2.0   2016-06-12 CRAN (R 3.3.0) 
##  lubridate    1.6.0   2016-09-13 CRAN (R 3.3.0) 
##  magrittr     1.5     2014-11-22 CRAN (R 3.3.0) 
##  memoise      1.0.0   2016-01-29 CRAN (R 3.3.0) 
##  mnormt       1.5-5   2016-10-15 CRAN (R 3.3.0) 
##  modelr       0.1.0   2016-08-31 CRAN (R 3.3.0) 
##  munsell      0.4.3   2016-02-13 CRAN (R 3.3.0) 
##  nlme         3.1-131 2017-02-06 CRAN (R 3.3.3) 
##  plyr         1.8.4   2016-06-08 CRAN (R 3.3.0) 
##  psych        1.6.12  2017-01-08 CRAN (R 3.3.2) 
##  purrr      * 0.2.2   2016-06-18 CRAN (R 3.3.0) 
##  R6           2.2.0   2016-10-05 CRAN (R 3.3.0) 
##  Rcpp         0.12.10 2017-03-19 cran (@0.12.10)
##  readr      * 1.1.0   2017-03-22 cran (@1.1.0)  
##  readxl       0.1.1   2016-03-28 CRAN (R 3.3.0) 
##  reshape2     1.4.2   2016-10-22 CRAN (R 3.3.0) 
##  rmarkdown    1.3     2016-12-21 CRAN (R 3.3.2) 
##  rprojroot    1.2     2017-01-16 CRAN (R 3.3.2) 
##  rvest        0.3.2   2016-06-17 CRAN (R 3.3.0) 
##  scales       0.4.1   2016-11-09 CRAN (R 3.3.1) 
##  stringi      1.1.2   2016-10-01 CRAN (R 3.3.0) 
##  stringr      1.2.0   2017-02-18 CRAN (R 3.3.2) 
##  tibble     * 1.2     2016-08-26 cran (@1.2)    
##  tidyr      * 0.6.1   2017-01-10 CRAN (R 3.3.2) 
##  tidyverse  * 1.1.1   2017-01-27 CRAN (R 3.3.2) 
##  withr        1.0.2   2016-06-20 CRAN (R 3.3.0) 
##  xml2         1.1.1   2017-01-24 CRAN (R 3.3.2) 
##  yaml         2.1.14  2016-11-12 cran (@2.1.14)